package com.guigu.pojo.stock;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * <p>
 * 
 * </p>
 *
 * @author Mr.Zhang
 * @since 2024-12-06
 */
@Data
@TableName("S_PAY_DETAILS")
public class SPayDetails implements Serializable {

    private static final long serialVersionUID=1L;

    //@apiModelProperty(value = "序号，唯一标识出库明细记录，自增长")
      @TableId(value = "ID", type = IdType.AUTO)
    private Integer id;

    //@apiModelProperty(value = "父级序号，关联出库表，不可为空，建立父子关系，明确明细归属出库单")
    @TableField("PARENT_ID")
    private Integer parentId;

    //@apiModelProperty(value = "产品编号，不可为空，关联产品档案，精准定位出库产品")
    @TableField("PRODUCT_ID")
    private String productId;

    //@apiModelProperty(value = "产品名称，可空，辅助识别产品，提升明细可读性")
    @TableField("PRODUCT_NAME")
    private String productName;

    //@apiModelProperty(value = "产品描述，可空，提供产品详细信息，辅助出库操作")
    @TableField("PRODUCT_DESCRIBE")
    private String productDescribe;

    //@apiModelProperty(value = "数量，不可为空，记录出库产品数量，确定库存扣减量")
    @TableField("AMOUNT")
    private BigDecimal amount;

    //@apiModelProperty(value = "单位，可空，产品计量单位，规范数量计量标准")
    @TableField("AMOUNT_UNIT")
    private String amountUnit;

    //@apiModelProperty(value = "单价，可空，产品出库单价，计算明细金额基础")
    @TableField("COST_PRICE")
    private BigDecimal costPrice;

    //@apiModelProperty(value = "小计，为数量与单价乘积，可空，统计产品出库金额明细")
    @TableField("SUBTOTAL")
    private BigDecimal subtotal;

    //@apiModelProperty(value = "确认出库件数，可空，实际确认的出库产品数量，精准库存管理")
    @TableField("PAID_AMOUNT")
    private BigDecimal paidAmount;

    //@apiModelProperty(value = "出库标志，如已登记、已调度，不可为空，同步出库状态，确保数据一致性")
    @TableField("PAY_TAG")
    private String payTag;


}
